package com.njmaomao.gj.pyot.common.bean.dto;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

@ApiModel(value = "支付查询出参")
public class OrderQueryRespDTO extends WechatResponse {

    @ApiModelProperty(notes = "公众账号ID")
    private String appId;

    @ApiModelProperty(notes = "用户标识")
    private String openId;

    @ApiModelProperty(notes = "用户是否关注公众账号，Y-关注，N-未关注，仅在公众账号类型支付有效")
    private String isSubscribe;

    @ApiModelProperty(notes = "调用接口提交的交易类型，取值如下：JSAPI，NATIVE，APP，MICROPAY")
    private String tradeType;

    @ApiModelProperty(notes = "交易状态  SUCCESS—支付成功 REFUND—转入退款 NOTPAY—未支付 CLOSED—已关闭 REVOKED—已撤销（刷卡支付）USERPAYING--用户支付中 PAYERROR--支付失败(其他原因，如银行返回失败)")
    private String tradeState;

    @ApiModelProperty(notes = "付款银行  银行类型，采用字符串类型的银行标识")
    private String bankType;

    @ApiModelProperty(notes = "标价金额 订单总金额，单位为分")
    private int totalFee;

    @ApiModelProperty(notes = "标价币种 货币类型，符合ISO 4217标准的三位字母代码，默认人民币：CNY，其他值列表详见货币类型")
    private String feeType;

    @ApiModelProperty(notes = "现金支付金额 单位为分")
    private int cashFee;

    @ApiModelProperty(notes = "现金支付币种  货币类型，符合ISO 4217标准的三位字母代码，默认人民币：CNY，其他值列表详见货币类型")
    private String cashFeeType;

    @ApiModelProperty(notes = "微信支付订单号")
    private String transactionId;

    @ApiModelProperty(notes = "合生元订单号  商户系统内部订单号，要求32个字符内，只能是数字、大小写字母_-|*@ ，且在同一个商户号下唯一。")
    private String orderCode;

    @ApiModelProperty(notes = "支付完成时间  订单支付时间，格式为yyyyMMddHHmmss，如2009年12月25日9点10分10秒表示为20091225091010。其他详见时间规则")
    private String timeEnd;

    @ApiModelProperty(notes = "交易状态描述 对当前查询订单状态的描述和下一步操作的指引")
    private String  tradeStateDesc;

    public OrderQueryRespDTO(String resultCode, String errCode, String errCodeDes) {
        super(resultCode, errCode, errCodeDes);
    }

    public OrderQueryRespDTO() {
        super();
    }

    public String getAppId() {
        return appId;
    }

    public void setAppId(String appId) {
        this.appId = appId;
    }

    public String getOpenId() {
        return openId;
    }

    public void setOpenId(String openId) {
        this.openId = openId;
    }

    public String getIsSubscribe() {
        return isSubscribe;
    }

    public void setIsSubscribe(String isSubscribe) {
        this.isSubscribe = isSubscribe;
    }

    public String getTradeType() {
        return tradeType;
    }

    public void setTradeType(String tradeType) {
        this.tradeType = tradeType;
    }

    public String getTradeState() {
        return tradeState;
    }

    public void setTradeState(String tradeState) {
        this.tradeState = tradeState;
    }

    public String getBankType() {
        return bankType;
    }

    public void setBankType(String bankType) {
        this.bankType = bankType;
    }

    public int getTotalFee() {
        return totalFee;
    }

    public void setTotalFee(int totalFee) {
        this.totalFee = totalFee;
    }

    public String getFeeType() {
        return feeType;
    }

    public void setFeeType(String feeType) {
        this.feeType = feeType;
    }

    public int getCashFee() {
        return cashFee;
    }

    public void setCashFee(int cashFee) {
        this.cashFee = cashFee;
    }

    public String getCashFeeType() {
        return cashFeeType;
    }

    public void setCashFeeType(String cashFeeType) {
        this.cashFeeType = cashFeeType;
    }

    public String getTransactionId() {
        return transactionId;
    }

    public void setTransactionId(String transactionId) {
        this.transactionId = transactionId;
    }

    public String getOrderCode() {
        return orderCode;
    }

    public void setOrderCode(String orderCode) {
        this.orderCode = orderCode;
    }

    public String getTimeEnd() {
        return timeEnd;
    }

    public void setTimeEnd(String timeEnd) {
        this.timeEnd = timeEnd;
    }

    public String getTradeStateDesc() {
        return tradeStateDesc;
    }

    public void setTradeStateDesc(String tradeStateDesc) {
        this.tradeStateDesc = tradeStateDesc;
    }
}
